rem ---- P4iteration -------------------------------- rem rem f(z)=z^4-2*p*z^2+4*q*z+b rem rem p=(a1+a2)^2-a1*a2=pr+i*pi rem q=a1*a2*(a1+a2) =qr+i*qi rem critical points: a1, a2, a3 rem a1+a2+a3=0 rem rem 初期値 or Critical point を与えての反復計算 rem REM-------------------------------- 8.4 '08, Joe ---------------- rem print"初期値を与えて Zn+1=Zn^4-2*p*Zn^2+4*q*Zn+b の反復を計算" input prompt"a1=a1r+i*a1i をinputせよ,a1r,a1i=":a1r,a1i input prompt"a2=a2r+i*a2i をinputせよ,a2r,a2i=":a2r,a2i input prompt"b=br+i*bi をinputせよ,br,bi=":br,bi LET a3r=-(a1r+a2r) LET a3i=-(a1i+a2i) 5 PRINT"初期値の選択(下の4つから)" print"1.... 初期値は a1" print"2.... 初期値は a2" print"3.... 初期値は a3" print"4---- x0,y0 をinput" print"----------------------" input prompt" 番号(1〜4)=":jo rem if jo=1 then goto 10 if jo=2 then goto 20 if jo=3 then goto 25 input prompt"x0,y0=":x0,y0 goto 30 10 LET x0=a1r LET y0=a1i goto 30 20 LET x0=a2r LET y0=a2i goto 30 25 LET x0=a3r LET y0=a3i 30 LET r=36 print"表示する数列の最小と最大の n をinputせよ" input prompt"nl,nu=":nl,nu rem rem 多項式の係数 rem LET c1=a1r+a2r LET d1=a1i+a2i LET c2=a1r*a2r LET d2=a1i*a2i LET d3=c2-d2 LET c3=a1r*a2i LET c4=a2r*a1i LET c5=c3+c4 LET pr=c1*c1-d1*d1-d3 LET ppi=2*c1*d1-c5 LET qr=d3*c1-c5*d1 LET qi=d3*d1+c5*c1 rem LET x=x0 LET y=y0 rem rem 計算 rem for n=1 to nu LET xy2=(x+y)*(x-y) LET xy=x*y LET x1=xy2*(xy2-2*pr)+4*(xy*(ppi-xy)+qr*x-qi*y)+br LET y1=2*xy2*(2*xy-ppi)+4*(x*(qi-pr*y)+qr*y)+bi LET d=x1*x1+y1*y1 if nl<=n and n<=nu then goto 32 else goto 35 32 print n;")";x1;" , ";y1 35 if d>r then goto 40 else goto 45 40 print"発散です d=";d;" n=";n goto 100 45 LET x=x1 LET y=y1 next n rem 100 INPUT PROMPT"別の臨界値でやる? yes...1, no....2=":joe IF joe=1 THEN GOTO 5 END